package com.symc.his.api.doctor;

import com.symc.his.api.base.BaseResponse;
import com.symc.his.api.doctor.dto.req.WesternMedicineAdvInfoReqDTO;
import com.symc.his.api.doctor.dto.req.WesternMedicineAdvReqDTO;
import java.util.List;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * @Description: 
 * @CreateTime: 2023/4/30 16:08
 * @Version: 
 * @Since: 1.8
 * @Author: 辛凤文 forward.seen@foxmail.com 
 */
public interface WesternMedicineAdvService {

    /**
     * 测试接口
     * @return
     */
    @GetMapping("/testWesternMedicineAdvService")
    String testWesternMedicineAdvService();

    /**
     * 保存西药医嘱列表
     * @param medicalAdvInfo
     * @return
     */
    @PostMapping("/saveWesternMedicineAdvList")
    BaseResponse saveWesternMedicineAdvList(@RequestBody WesternMedicineAdvInfoReqDTO medicalAdvInfo);

    /**
     * 保存西药医嘱
     * @param westernMedicineAdv
     * @return
     */
    @PostMapping("/saveWesternMedicineAdv")
    BaseResponse saveWesternMedicineAdv(@RequestBody WesternMedicineAdvReqDTO westernMedicineAdv);

    /**
     * 逻辑删除西药医嘱
     * @param visitRecordId
     * @param drugCode
     * @return
     */
    @PostMapping("/deleteWesternMedicineAdvByVisitRecordIdAndDrugCode")
    BaseResponse deleteWesternMedicineAdvByVisitRecordIdAndDrugCode(@RequestParam String visitRecordId,@RequestParam String drugCode);

    /**
     * 根据该接诊ID获取西药医嘱
     * @param visitRecordId
     * @return
     */
    @GetMapping("/queryWesternMedicineAdvListByVisitRecordId")
    BaseResponse queryWesternMedicineAdvListByVisitRecordId(@RequestParam String visitRecordId);
}